package manager;

import entity.Histogram;
import entity.Image;

public interface IHistogramManager {

	/**
	 * Expand a image histogram
	 * 
	 * @param image
	 * 				- The original image
	 * @param rMax
	 * 				- The max value to be considered.
	 * @param rMin
	 * 				- The min value to be considered.
	 * @param l
	 * 				- The dimension of the image
	 * @return the new Histogram with the old values as key and the new values as value
	 */
	Histogram histogramExpansion(Image image, int rMax, int rMin, int l);
	
	/**
	 * Equalizes a image histogram
	 * 
	 * @param histogram
	 * 				- The histogram of the image
	 * @param image
	 * 				- The original image
	 * @param l
	 * 				- The dimension of the image 
	 * @return the new Histogram with the old values as key and the new values as value
	 */
	Histogram histogramEqualization(Histogram histogram, Image image, int l);
	
	
}
